Two Dimensional arrays

int[][] mat = new int[3][4];

mat			RowAvgs
0	1	2	1.0	
10	11	12	11.0
20	21	22	21.0

10.0	11.0	12.0	ColAvgs

First objective: show you to create the same array using initializer lists

Application#1: RowColAvgs.java

RowAvgs[0] = mat[0][0] + mat[0][1] + ... + mat[0][COLS-1]
RowAvgs[1] = mat[1][0] + mat[1][1] + ... + mat[1][COLS-1]

RowAvgs[row] = mat[row][0] + mat[row][1] + ... + mat[row][COLS - 1]
= \sum_{col = 0}^{COLS - 1} mat[row][col]


Outer for loop: covers all the rows (row idx ranging from 0 to ROWS - 1)
Inner for loop: covers all the columns per row (col idx ranging from 0 to COLS - 1)

- ArrayList: java.util.ArrayList;

dynamic data structures
Size: the number of elements currently present in the data structure
Capacity: maximum number of values that an array list can hold

ArrayList<Integer> list = new ArrayList<>();

Application#2: Beatles.java








